package com.zhongke.cotrun.service;

import com.github.pagehelper.PageInfo;
import com.zhongke.cotrun.model.pojo.*;

import java.util.List;

/**
 * 作者 yhl
 * 日期 2020-01-05 02:02:19
 * 描述 ProjectInfo 服务
 */
public interface ProjectInfoService {


    /**
     * 根据主键删除数据
     *
     * @param projectId
     */
    int deleteByPrimaryKey(Integer projectId);

    /**
     * 插入数据库记录
     *
     * @param record
     */
    int insertSelective(ProjectInfo record);

    /**
     * 使用：插入历史数据
     */
    int insertSelectiveForHistory(ProjectInfo record);

    /**
     * 修改数据
     *
     * @param record
     */
    int updateByPrimaryKeySelective(ProjectInfo record);


    /**
     * 根据主键id查询
     *
     * @param projectId
     */
    ProjectInfoVo selectByPrimaryKey(Integer projectId);

    /**
     * 获取最新12条项目信息
     * @return
     */
    List<ProjectInfoVo> listLast12Info();
    /**
     * 根据主键id查询未审核数据
     *
     * @param projectId
     */
    ProjectInfo selectAuditDetailByPrimaryKey(Integer projectId);

    /**
     * 分页查询项目列表
     * @param param
     * @return
     */
    PageQueryResult<ProjectInfoVo> pageQueryProjectList(ProjectInfoVo param);


    /**
     * 分页查询项目列表
     * @param param
     * @return
     */
    PageInfo pageQueryProjectListForManager(ProjectInfoVo param);
    //统计未审核总数
    int queryUnApprovalCounts();

    Boolean cancelByPrimaryKey(Integer id);

    boolean approvalByPrimaryKey(Integer id, Integer state,String opinion);

    boolean deleteBatch(String ids);

    boolean recommendProject(String ids);

    boolean setRecommend(Integer id, Integer state);

    boolean approvalPass(ProjectInfo record);
}
